package org.jeecg.pms.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 *
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class PmsProject implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    private String id;
    /**
     * 赛事id
     */
    private String raceId;
    /**
     * 赛事名称
     */
    private String raceName;
    /**
     * 赛事级别（字典）
     */
    private String raceRank;
    /**
     * 赛事编号
     */
    private String raceCode;
    /**
     * 渠道类型 1大赛 2项目申报
     */
    private String channelType;
    /**
     * 参数人员id
     */
    private String userId;
    /**
     * 参数人员账号
     */
    private String userAccount;
    /**
     * 参数人员名称
     */
    private String userName;
    /**
     * 所属机构
     */
    private String[] orgCode;
    /**
     * 项目编码
     */
    private String projectCode;
    /**
     * 项目名称
     */
    private String projectName;
    /**
     * 项目所在地编码
     */
    private String projectAreaCode;
    /**
     * 项目所在地名称
     */
    private String projectAreaName;
    /**
     * 赛区
     */
    private String raceArea;
    /**
     * 所属赛道（字典）
     */
    private String raceTrack;
    /**
     * 所属领域
     */
    private String raceDomain;
    /**
     * 申报企业
     */
    private String companyName;
    /**
     * 注册地址
     */
    private String companyAddress;
    /**
     * 注册时间
     */
    private String registrationTime;
    /**
     * 主营业务
     */
    private String mainBusiness;
    /**
     * 注册资本
     */
    private String registeredCapital;
    /**
     * 营业执照 统一社会信用代码
     */
    private String businessLicense;
    /**
     * 法人代表
     */
    private String legalPerson;
    /**
     * 学历
     */
    private String education;
    /**
     * 公司就业人数
     */
    private Integer companyPeopleNum;
    /**
     * 上年经营收入
     */
    private String lastYearRevenues;
    /**
     * 若无成立工会 是否承诺在大赛决赛日后三个月内成立工会组织
     */
    private String isFoundingLaborUnion;
    /**
     * 企业股权结构情况
     */
    private String ownershipStructure;
    /**
     * 申报项目主体
     */
    private String declareSubject;
    /**
     * 地址
     */
    private String address;
    /**
     * 负责人
     */
    private String principal;
    /**
     * 项目就业人数
     */
    private Integer projectEmployment;
    /**
     * 所属工会（如有）
     */
    private String laborUnion;
    /**
     * 核心知识产权数量及情况说明
     */
    private String intellectualProperty;
    /**
     * 项目背景
     */
    private String projectBackground;
    /**
     * 产品说明
     */
    private String description;
    /**
     * 市场前景
     */
    private String marketProspect;
    /**
     * 推荐渠道（字典）
     */
    private String recommendChannels;
    /**
     * 项目图
     */
    private String projectImgUrl;
    /**
     * 项目视频
     */
    private String projectVideoUrl;
    /**
     * 是否劳模
     */
    private String isModelWorker;
    /**
     * 当前阶段id
     */
    private String stageId;
    /**
     * 当前阶段名称
     */
    private String stageName;
    /**
     * 当前阶段级别
     */
    private Integer stageGrade;
    /**
     * 联系人
     */
    private String contacts;
    /**
     * 联系方式
     */
    private String contactWay;
    /**
     * 通讯地址
     */
    private String contactAddress;
    /**
     * 联系电话
     */
    private String phone;
    /**
     * 状态 -1驳回 0待审核 1评比/审核中 2未晋级 3晋级/审核成功
     */
    private String status;
    /**
     * 项目类别
     */
    private String itemCategory;
    /**
     * 专利形式
     */
    private String patentForm;
    /**
     * 专利状况
     */
    private String patentStatus;
    /**
     * 专利批准时间
     */
    private String patentApprovalTime;

    /**
     * 实施方式
     */
    private String implementation;
    /**
     * 项目投入
     */
    private BigDecimal projectInput;
    /**
     * 年产值
     */
    private BigDecimal annualOutput;
    /**
     * 利润
     */
    private BigDecimal profit;
    /**
     * 第一完成人姓名
     */
    private String firstFinisherName;
    /**
     * 性别
     */
    private String sex;
    /**
     * 岗位职务
     */
    private String jobTitle;
    /**
     * 文化程度
     */
    private String educationalLevel;
    /**
     * 工作单位
     */
    private String employer;
    /**
     * 邮政编码
     */
    private String zipCode;
    /**
     * 是否允许编辑
     */
    private String allowEditing;
    /**
     * 删除状态(0正常 1删除)
     */
    private String delFlag;
    /**
     * 创建人
     */
    private String createBy;
    /**
     * 创建时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 更新人
     */
    private String updateBy;
    /**
     * 更新时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    private String listStatus;
    private String canRate;
    private List<PmsRaceFile> fileList;
    private String score;
    private String remark;

    private List<PmsProjectParticipant> participantList;

    private PmsRace pmsRace;

    private List<PmsRaceStage> pmsRaceStageList;

    private List<PmsProjectScore> pmsProjectScoreList;

    /**
     * 开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm")
    private Date startTime;
    /**
     * 结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm")
    private Date endTime;

    private String declareSubjectName;

    private String principalName;

    private String modelWorker;


    /**
     * 第一人联系人电话
     */
    private String firstFinisherPhone;

    /**
     * 第一人联系人地址
     */
    private String firstFinisherAddress;

    /**
     * 项目简介
     */
    private String details;

    //同步五小字段
    /**
     * 推荐渠道二级（字典）
     */
    private String recommendSecondChannels;

    /**
     * 推荐渠道二级其他
     */
    private String recommendSecondChannelsOther;

    /**
     * 行业类别
     */
    private String industryCategory;

    /**
     * 上一年度营收
     */
    private String previousYearRevenue;

    /**
     * 资产总额
     */
    private String totalAssets;

    /**
     * 从业人员数
     */
    private String employeds;

    /**
     * 企业性质
     */
    private String enterpriseNature;

    /**
     * 省级劳模和工匠人才创新工作室是否参与
     */
    private String provincialWorkerJoin;

    /**
     * 市级劳模和工匠人才创新工作室是否参与
     */
    private String municipalWorkerJoin;

    /**
     * 组织名称
     */
    private String orgCodeName;

    /**
     * 项目最后评分
     */
    private BigDecimal lastScore;

    /**
     * 奖项
     */
    private String awards;


    /**
     * 项目投入（单位：万元）
     */
    private String investment;

    /**
     * 项目产出（单位：万元）
     */
    private String output;

    /**
     * 报告附件url
     */
    private String report;

    /**
     * 劳模工作室是否参与
     */
    private String workerjoin;

    /**
     * 综合评价
     */
    private String evaluate;

}
